<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<meta http-equiv="cache-control" content="no-cache">
<title>Genivia - httpda.h File Reference</title>
<link href="genivia_tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="genivia_content.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="top">
 <div id="titlearea">
  <table height="72px" width="100%" cellspacing="0" cellpadding="0">
   <tbody>
    <tr>
     <td width="10%">&nbsp;</td>
     <td width="175px"><a href="https://www.genivia.com"><img alt="Genivia" src="GeniviaLogo2_trans_noslogan.png"/></a></td>
     <td class="tab_home"><a href="https://www.genivia.com">Home</a></td>
     <td class="tab_home"><a href="https://www.genivia.com/docs.html">Documentation</a></td>
     <td>
      <div style="float: right; font-size: 18px; font-weight: bold;">httpda.h File Reference</div>
      <br>
      <div style="float: right; font-size: 10px;">updated Mon May 4 2020 by Robert van Engelen</div>
     </td>
     <td width="10%">&nbsp;</td>
    </tr>
   </tbody>
  </table>
 </div>
<!-- Generated by Doxygen 1.8.11 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
    </ul>
  </div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_b4c3aec6cd8f28418150dce663061cfa.html">plugin</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a>  </div>
  <div class="headertitle">
<div class="title">httpda.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;stdsoap2.h&quot;</code><br />
<code>#include &quot;smdevp.h&quot;</code><br />
<code>#include &quot;<a class="el" href="threads_8h.html">threads.h</a>&quot;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for httpda.h:</div>
<div class="dyncontent">
<div class="center"><img src="httpda_8h__incl.png" border="0" usemap="#httpda_8h" alt=""/></div>
<map name="httpda_8h" id="httpda_8h">
<area shape="rect" id="node8" href="threads_8h.html" title="threads.h" alt="" coords="642,80,719,107"/>
</map>
</div>
</div><div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="httpda_8h__dep__incl.png" border="0" usemap="#httpda_8hdep" alt=""/></div>
<map name="httpda_8hdep" id="httpda_8hdep">
<area shape="rect" id="node3" href="httpda_8c.html" title="httpda.c" alt="" coords="6,83,73,111"/>
</map>
</div>
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structhttp__da__data.html">http_da_data</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Plugin data to override callbacks.  <a href="structhttp__da__data.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structhttp__da__session.html">http_da_session</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Keeps internal state of shared sessions.  <a href="structhttp__da__session.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structhttp__da__info.html">http_da_info</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Used to save and restore credentials for client-side invocations to the same authenticated endpoint.  <a href="structhttp__da__info.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a933fe115dacc74940cfeb5dfa31d9e99"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#a933fe115dacc74940cfeb5dfa31d9e99">HTTP_DA_ID</a>&#160;&#160;&#160;&quot;SOAP-HTTP-DA/2.0&quot;</td></tr>
<tr class="separator:a933fe115dacc74940cfeb5dfa31d9e99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ac868b70951b56c3cf3da1a4ed28987"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#a6ac868b70951b56c3cf3da1a4ed28987">HTTP_DA_SESSION_TIMEOUT</a>&#160;&#160;&#160;(600)</td></tr>
<tr class="separator:a6ac868b70951b56c3cf3da1a4ed28987"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a26bfda7ff2ac0f7eff9972a3f82591a3"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 int SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#a26bfda7ff2ac0f7eff9972a3f82591a3">http_da</a> (struct soap *soap, struct soap_plugin *p, void *arg)</td></tr>
<tr class="separator:a26bfda7ff2ac0f7eff9972a3f82591a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d07ef5393a7e7e3932a6d1c52c2ae46"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 void *SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#a6d07ef5393a7e7e3932a6d1c52c2ae46">http_da_md5</a> ()</td></tr>
<tr class="memdesc:a6d07ef5393a7e7e3932a6d1c52c2ae46"><td class="mdescLeft">&#160;</td><td class="mdescRight">Use soap_register_plugin_arg(soap, http_da, http_da_md5()) for MD5 server-side challenge algorithm (not recommended).  <a href="#a6d07ef5393a7e7e3932a6d1c52c2ae46">More...</a><br /></td></tr>
<tr class="separator:a6d07ef5393a7e7e3932a6d1c52c2ae46"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a17a4da35da69672cb48a3794cd79af0d"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 void *SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#a17a4da35da69672cb48a3794cd79af0d">http_da_md5_sess</a> ()</td></tr>
<tr class="memdesc:a17a4da35da69672cb48a3794cd79af0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Use soap_register_plugin_arg(soap, http_da, http_da_md5_sess()) for MD5-sess server-side challenge algorithm (not recommended).  <a href="#a17a4da35da69672cb48a3794cd79af0d">More...</a><br /></td></tr>
<tr class="separator:a17a4da35da69672cb48a3794cd79af0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed03222a11ba9d2c9de68267dce4f289"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 void *SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#aed03222a11ba9d2c9de68267dce4f289">http_da_sha256</a> ()</td></tr>
<tr class="memdesc:aed03222a11ba9d2c9de68267dce4f289"><td class="mdescLeft">&#160;</td><td class="mdescRight">Use soap_register_plugin_arg(soap, http_da, http_da_sha256()) for MD5 server-side challenge algorithm (recommended).  <a href="#aed03222a11ba9d2c9de68267dce4f289">More...</a><br /></td></tr>
<tr class="separator:aed03222a11ba9d2c9de68267dce4f289"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa2e9c75d2f8a71f2b3733cb74a44ea9"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 void *SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#afa2e9c75d2f8a71f2b3733cb74a44ea9">http_da_sha256_sess</a> ()</td></tr>
<tr class="memdesc:afa2e9c75d2f8a71f2b3733cb74a44ea9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Use soap_register_plugin_arg(soap, http_da, http_da_sha256_sess()) for MD5-sess server-side challenge algorithm (recommended).  <a href="#afa2e9c75d2f8a71f2b3733cb74a44ea9">More...</a><br /></td></tr>
<tr class="separator:afa2e9c75d2f8a71f2b3733cb74a44ea9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00841aaf538c41cce753249539344594"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 void *SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#a00841aaf538c41cce753249539344594">http_da_sha512_256</a> ()</td></tr>
<tr class="memdesc:a00841aaf538c41cce753249539344594"><td class="mdescLeft">&#160;</td><td class="mdescRight">Use soap_register_plugin_arg(soap, http_da, http_da_sha512_256()) for MD5 server-side challenge algorithm (not yet supported).  <a href="#a00841aaf538c41cce753249539344594">More...</a><br /></td></tr>
<tr class="separator:a00841aaf538c41cce753249539344594"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f8f4c3134a567f8cad1659c75134063"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 void *SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#a8f8f4c3134a567f8cad1659c75134063">http_da_sha512_256_sess</a> ()</td></tr>
<tr class="memdesc:a8f8f4c3134a567f8cad1659c75134063"><td class="mdescLeft">&#160;</td><td class="mdescRight">Use soap_register_plugin_arg(soap, http_da, http_da_sha512_256_sess()) for MD5-sess server-side challenge algorithm (not yet supported).  <a href="#a8f8f4c3134a567f8cad1659c75134063">More...</a><br /></td></tr>
<tr class="separator:a8f8f4c3134a567f8cad1659c75134063"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add969b5bd64baf82026fe1d848958470"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 int SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#add969b5bd64baf82026fe1d848958470">http_da_verify_post</a> (struct soap *soap, const char *passwd)</td></tr>
<tr class="memdesc:add969b5bd64baf82026fe1d848958470"><td class="mdescLeft">&#160;</td><td class="mdescRight">Verifies the password credentials at the server side when used in an HTTP POST service operation.  <a href="#add969b5bd64baf82026fe1d848958470">More...</a><br /></td></tr>
<tr class="separator:add969b5bd64baf82026fe1d848958470"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a551f86a9d87113c930cd24b399278e4e"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 int SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#a551f86a9d87113c930cd24b399278e4e">http_da_verify_get</a> (struct soap *soap, const char *passwd)</td></tr>
<tr class="memdesc:a551f86a9d87113c930cd24b399278e4e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Verifies the password credentials at the server side when used in an HTTP GET service operation.  <a href="#a551f86a9d87113c930cd24b399278e4e">More...</a><br /></td></tr>
<tr class="separator:a551f86a9d87113c930cd24b399278e4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd60bd12717c05fea7764795da29ea38"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 int SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#abd60bd12717c05fea7764795da29ea38">http_da_verify_put</a> (struct soap *soap, const char *passwd)</td></tr>
<tr class="memdesc:abd60bd12717c05fea7764795da29ea38"><td class="mdescLeft">&#160;</td><td class="mdescRight">Verifies the password credentials at the server side when used in an HTTP PUT service operation.  <a href="#abd60bd12717c05fea7764795da29ea38">More...</a><br /></td></tr>
<tr class="separator:abd60bd12717c05fea7764795da29ea38"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59fb010bb5e9bbbfbea2ffe62f8f4551"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 int SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#a59fb010bb5e9bbbfbea2ffe62f8f4551">http_da_verify_patch</a> (struct soap *soap, const char *passwd)</td></tr>
<tr class="memdesc:a59fb010bb5e9bbbfbea2ffe62f8f4551"><td class="mdescLeft">&#160;</td><td class="mdescRight">Verifies the password credentials at the server side when used in an HTTP PATCH service operation.  <a href="#a59fb010bb5e9bbbfbea2ffe62f8f4551">More...</a><br /></td></tr>
<tr class="separator:a59fb010bb5e9bbbfbea2ffe62f8f4551"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59965f07b5dc9be4d4ae9e56b0f2082c"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 int SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#a59965f07b5dc9be4d4ae9e56b0f2082c">http_da_verify_del</a> (struct soap *soap, const char *passwd)</td></tr>
<tr class="memdesc:a59965f07b5dc9be4d4ae9e56b0f2082c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Verifies the password credentials at the server side when used in an HTTP DELETE service operation.  <a href="#a59965f07b5dc9be4d4ae9e56b0f2082c">More...</a><br /></td></tr>
<tr class="separator:a59965f07b5dc9be4d4ae9e56b0f2082c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa06cd75917876378a4ab4a04dccb7b1c"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 int SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#aa06cd75917876378a4ab4a04dccb7b1c">http_da_verify_method</a> (struct soap *soap, const char *method, const char *passwd)</td></tr>
<tr class="memdesc:aa06cd75917876378a4ab4a04dccb7b1c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Verifies the password credentials at the server side when used in the specified HTTP method.  <a href="#aa06cd75917876378a4ab4a04dccb7b1c">More...</a><br /></td></tr>
<tr class="separator:aa06cd75917876378a4ab4a04dccb7b1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2debc522d5969b31a19f0d902e362089"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 void SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#a2debc522d5969b31a19f0d902e362089">http_da_save</a> (struct soap *soap, struct <a class="el" href="structhttp__da__info.html">http_da_info</a> *info, const char *realm, const char *userid, const char *passwd)</td></tr>
<tr class="memdesc:a2debc522d5969b31a19f0d902e362089"><td class="mdescLeft">&#160;</td><td class="mdescRight">Saves the credentials to the digest store to use repeatedly for authentication.  <a href="#a2debc522d5969b31a19f0d902e362089">More...</a><br /></td></tr>
<tr class="separator:a2debc522d5969b31a19f0d902e362089"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41fec462c654d9a38735c260412a4e34"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 void SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#a41fec462c654d9a38735c260412a4e34">http_da_restore</a> (struct soap *soap, struct <a class="el" href="structhttp__da__info.html">http_da_info</a> *info)</td></tr>
<tr class="memdesc:a41fec462c654d9a38735c260412a4e34"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves the credentials from the digest store to use for authentication.  <a href="#a41fec462c654d9a38735c260412a4e34">More...</a><br /></td></tr>
<tr class="separator:a41fec462c654d9a38735c260412a4e34"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89939a4b65f3533ef7b8161db503f4e3"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 void SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#a89939a4b65f3533ef7b8161db503f4e3">http_da_release</a> (struct soap *soap, struct <a class="el" href="structhttp__da__info.html">http_da_info</a> *info)</td></tr>
<tr class="memdesc:a89939a4b65f3533ef7b8161db503f4e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Releases the digest store and frees memory.  <a href="#a89939a4b65f3533ef7b8161db503f4e3">More...</a><br /></td></tr>
<tr class="separator:a89939a4b65f3533ef7b8161db503f4e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8fb73c330e76f4722f1e9fcd91c46a62"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 void SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#a8fb73c330e76f4722f1e9fcd91c46a62">http_da_proxy_save</a> (struct soap *soap, struct <a class="el" href="structhttp__da__info.html">http_da_info</a> *info, const char *realm, const char *userid, const char *passwd)</td></tr>
<tr class="memdesc:a8fb73c330e76f4722f1e9fcd91c46a62"><td class="mdescLeft">&#160;</td><td class="mdescRight">Saves the credentials to the digest store to use repeatedly for proxy authentication.  <a href="#a8fb73c330e76f4722f1e9fcd91c46a62">More...</a><br /></td></tr>
<tr class="separator:a8fb73c330e76f4722f1e9fcd91c46a62"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa50dd85222d3b4c6469862acf4202190"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 void SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#aa50dd85222d3b4c6469862acf4202190">http_da_proxy_restore</a> (struct soap *soap, struct <a class="el" href="structhttp__da__info.html">http_da_info</a> *info)</td></tr>
<tr class="memdesc:aa50dd85222d3b4c6469862acf4202190"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieves the credentials from the digest store to use for proxy authentication.  <a href="#aa50dd85222d3b4c6469862acf4202190">More...</a><br /></td></tr>
<tr class="separator:aa50dd85222d3b4c6469862acf4202190"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ce5c0ca28c0062e9b5c6ef786966291"><td class="memItemLeft" align="right" valign="top">SOAP_FMAC1 void SOAP_FMAC2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#a1ce5c0ca28c0062e9b5c6ef786966291">http_da_proxy_release</a> (struct soap *soap, struct <a class="el" href="structhttp__da__info.html">http_da_info</a> *info)</td></tr>
<tr class="memdesc:a1ce5c0ca28c0062e9b5c6ef786966291"><td class="mdescLeft">&#160;</td><td class="mdescRight">Releases the digest store for proxy authentication and frees memory.  <a href="#a1ce5c0ca28c0062e9b5c6ef786966291">More...</a><br /></td></tr>
<tr class="separator:a1ce5c0ca28c0062e9b5c6ef786966291"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:a315999f0aaca965bdc287f0207ce6ab1"><td class="memItemLeft" align="right" valign="top">const char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpda_8h.html#a315999f0aaca965bdc287f0207ce6ab1">http_da_id</a> []</td></tr>
<tr class="separator:a315999f0aaca965bdc287f0207ce6ab1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="a933fe115dacc74940cfeb5dfa31d9e99"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define HTTP_DA_ID&#160;&#160;&#160;&quot;SOAP-HTTP-DA/2.0&quot;</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>plugin identification for plugin registry </p>

</div>
</div>
<a class="anchor" id="a6ac868b70951b56c3cf3da1a4ed28987"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define HTTP_DA_SESSION_TIMEOUT&#160;&#160;&#160;(600)</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>HTTP digest authentication session times out after ten minutes </p>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="a26bfda7ff2ac0f7eff9972a3f82591a3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 int SOAP_FMAC2 http_da </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct soap_plugin *&#160;</td>
          <td class="paramname"><em>p</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>arg</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Plugin registry function, use with soap_register_plugin_arg(soap, http_da, ...) </p>

</div>
</div>
<a class="anchor" id="a6d07ef5393a7e7e3932a6d1c52c2ae46"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 void* SOAP_FMAC2 http_da_md5 </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Use soap_register_plugin_arg(soap, http_da, http_da_md5()) for MD5 server-side challenge algorithm (not recommended). </p>
<p>Use MD5 for server-side configuration with soap_register_plugin_arg() </p>

</div>
</div>
<a class="anchor" id="a17a4da35da69672cb48a3794cd79af0d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 void* SOAP_FMAC2 http_da_md5_sess </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Use soap_register_plugin_arg(soap, http_da, http_da_md5_sess()) for MD5-sess server-side challenge algorithm (not recommended). </p>
<p>Use MD5-sess for server-side configuration with soap_register_plugin_arg() </p>

</div>
</div>
<a class="anchor" id="a1ce5c0ca28c0062e9b5c6ef786966291"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 void SOAP_FMAC2 http_da_proxy_release </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structhttp__da__info.html">http_da_info</a> *&#160;</td>
          <td class="paramname"><em>info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Releases the digest store for proxy authentication and frees memory. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramname">info</td><td>a pointer to the digest store </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aa50dd85222d3b4c6469862acf4202190"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 void SOAP_FMAC2 http_da_proxy_restore </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structhttp__da__info.html">http_da_info</a> *&#160;</td>
          <td class="paramname"><em>info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Retrieves the credentials from the digest store to use for proxy authentication. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramname">info</td><td>a pointer to the digest store </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a8fb73c330e76f4722f1e9fcd91c46a62"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 void SOAP_FMAC2 http_da_proxy_save </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structhttp__da__info.html">http_da_info</a> *&#160;</td>
          <td class="paramname"><em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>realm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>userid</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>passwd</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Saves the credentials to the digest store to use repeatedly for proxy authentication. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramname">info</td><td>a pointer to the digest store </td></tr>
    <tr><td class="paramname">realm</td><td>string (e.g. use soap-&gt;authrealm) of the server </td></tr>
    <tr><td class="paramname">userid</td><td>the user ID string </td></tr>
    <tr><td class="paramname">passwd</td><td>the user password string </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a89939a4b65f3533ef7b8161db503f4e3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 void SOAP_FMAC2 http_da_release </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structhttp__da__info.html">http_da_info</a> *&#160;</td>
          <td class="paramname"><em>info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Releases the digest store and frees memory. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramname">info</td><td>a pointer to the digest store </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a41fec462c654d9a38735c260412a4e34"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 void SOAP_FMAC2 http_da_restore </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structhttp__da__info.html">http_da_info</a> *&#160;</td>
          <td class="paramname"><em>info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Retrieves the credentials from the digest store to use for authentication. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramname">info</td><td>a pointer to the digest store </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a2debc522d5969b31a19f0d902e362089"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 void SOAP_FMAC2 http_da_save </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structhttp__da__info.html">http_da_info</a> *&#160;</td>
          <td class="paramname"><em>info</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>realm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>userid</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>passwd</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Saves the credentials to the digest store to use repeatedly for authentication. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramname">info</td><td>a pointer to the digest store </td></tr>
    <tr><td class="paramname">realm</td><td>string (e.g. use soap-&gt;authrealm) of the server </td></tr>
    <tr><td class="paramname">userid</td><td>the user ID string </td></tr>
    <tr><td class="paramname">passwd</td><td>the user password string </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aed03222a11ba9d2c9de68267dce4f289"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 void* SOAP_FMAC2 http_da_sha256 </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Use soap_register_plugin_arg(soap, http_da, http_da_sha256()) for MD5 server-side challenge algorithm (recommended). </p>
<p>Use SHA-256 for server-side configuration with soap_register_plugin_arg() </p>

</div>
</div>
<a class="anchor" id="afa2e9c75d2f8a71f2b3733cb74a44ea9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 void* SOAP_FMAC2 http_da_sha256_sess </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Use soap_register_plugin_arg(soap, http_da, http_da_sha256_sess()) for MD5-sess server-side challenge algorithm (recommended). </p>
<p>Use SHA-256-sess for server-side configuration with soap_register_plugin_arg() </p>

</div>
</div>
<a class="anchor" id="a00841aaf538c41cce753249539344594"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 void* SOAP_FMAC2 http_da_sha512_256 </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Use soap_register_plugin_arg(soap, http_da, http_da_sha512_256()) for MD5 server-side challenge algorithm (not yet supported). </p>
<p>Use SHA-512-256 for server-side configuration with soap_register_plugin_arg() </p>

</div>
</div>
<a class="anchor" id="a8f8f4c3134a567f8cad1659c75134063"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 void* SOAP_FMAC2 http_da_sha512_256_sess </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Use soap_register_plugin_arg(soap, http_da, http_da_sha512_256_sess()) for MD5-sess server-side challenge algorithm (not yet supported). </p>
<p>Use SHA-512-256-sess for server-side configuration with soap_register_plugin_arg() </p>

</div>
</div>
<a class="anchor" id="a59965f07b5dc9be4d4ae9e56b0f2082c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 int SOAP_FMAC2 http_da_verify_del </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>passwd</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Verifies the password credentials at the server side when used in an HTTP DELETE service operation. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramname">passwd</td><td>the user password string </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>SOAP_OK or error when verification failed </dd></dl>

</div>
</div>
<a class="anchor" id="a551f86a9d87113c930cd24b399278e4e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 int SOAP_FMAC2 http_da_verify_get </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>passwd</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Verifies the password credentials at the server side when used in an HTTP GET service operation. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramname">passwd</td><td>the user password string </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>SOAP_OK or error when verification failed </dd></dl>

</div>
</div>
<a class="anchor" id="aa06cd75917876378a4ab4a04dccb7b1c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 int SOAP_FMAC2 http_da_verify_method </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>method</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>passwd</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Verifies the password credentials at the server side when used in the specified HTTP method. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramname">method</td><td>the HTTP method, e.g. "POST", "GET", "PUT", "DELETE", "PATCH", "HEAD", "OPTIONS" </td></tr>
    <tr><td class="paramname">passwd</td><td>the user password string </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>SOAP_OK or error when verification failed </dd></dl>

</div>
</div>
<a class="anchor" id="a59fb010bb5e9bbbfbea2ffe62f8f4551"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 int SOAP_FMAC2 http_da_verify_patch </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>passwd</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Verifies the password credentials at the server side when used in an HTTP PATCH service operation. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramname">passwd</td><td>the user password string </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>SOAP_OK or error when verification failed </dd></dl>

</div>
</div>
<a class="anchor" id="add969b5bd64baf82026fe1d848958470"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 int SOAP_FMAC2 http_da_verify_post </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>passwd</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Verifies the password credentials at the server side when used in an HTTP POST service operation. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramname">passwd</td><td>the user password string </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>SOAP_OK or error when verification failed </dd></dl>

</div>
</div>
<a class="anchor" id="abd60bd12717c05fea7764795da29ea38"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">SOAP_FMAC1 int SOAP_FMAC2 http_da_verify_put </td>
          <td>(</td>
          <td class="paramtype">struct soap *&#160;</td>
          <td class="paramname"><em>soap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>passwd</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Verifies the password credentials at the server side when used in an HTTP PUT service operation. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">soap</td><td>context </td></tr>
    <tr><td class="paramname">passwd</td><td>the user password string </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>SOAP_OK or error when verification failed </dd></dl>

</div>
</div>
<h2 class="groupheader">Variable Documentation</h2>
<a class="anchor" id="a315999f0aaca965bdc287f0207ce6ab1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char http_da_id[]</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>plugin identification for plugin registry </p>

</div>
</div>
</div><!-- contents -->
<hr class="footer">
<address class="footer">
Copyright (C) 2020, Robert van Engelen, Genivia Inc., All Rights Reserved.
</address>
<address class="footer"><small>
Converted on Mon May 4 2020 10:11:40 by <a target="_blank" href="http://www.doxygen.org/index.html">Doxygen</a> 1.8.11</small></address>
<br>
<div style="height: 246px; background: #DBDBDB;">
</body>
</html>
